package operator;

/** 逻辑运算符（&& || !）参与逻辑运算的表达式都是布尔表达式(布尔表达式运算结果为true或false)，最终结果也是true或false。
 * &&(与，并且) 只有所有的条件都满足，最终&&运算符结果才为真。全真才为真，有假即为假。只要出现false，后面的表达式将不再运算。
 * ||（或，或者）只要有真即为真
 * !:逻辑非(取反)
**/
//ss
public class project5 {
    public static void main(String[] args) {
        System.out.println(5 > 3 && 4 > 3);//true
        System.out.println(1 > 3 && 4 > 3);//false
        System.out.println(6 > 3 && 2 > 3);//false
        System.out.println(1 > 3 && 2 > 3);//false
        int m = 3;
        System.out.println(m > 4 && (m = 10) < 100);//false 后面的语句没进行
        System.out.println(m);//3
        
        //|| 或
        System.out.println(5 > 3 || 4 > 3);//true
        System.out.println(1 > 3 || 4 > 3);//true
        System.out.println(6 > 3 || 2 > 3);//true
        System.out.println(1 > 3 || 2 > 3);//false
        int n = 10;
        System.out.println(n > 4 || (n = 15) < 100);//true 后面的语句没进行
        System.out.println(n);//n=15 wrong! n=10
        int o = 3;
        System.out.println(o > 4 || (o = 15) < 100);//第一个false 后面的语句进行
        System.out.println(o);

        //逻辑非！
        int a = 10;
        int b = 4;
        System.out.println(!(a>b));
    }
}
